﻿//using System;
//using System.Collections.Generic;
//using System.Linq;
//using System.Web;

//namespace KinectGame
//{
//    public class AndroidController
//    {
//        private KinectBaseForm activeWindow;
//        private static AndroidController _instance;
//        private GameContext gameContext;
//        delegate void updateActiveWindow(KinectBaseForm newForm);
//        //delegate void openTile(int h, int v);

//        public static AndroidController Instance
//        {
//            get
//            {
//                if (_instance == null) 
//                    _instance = new AndroidController();
//                return _instance;
//            }
//        }
        
//        private AndroidController()
//        { 
//        }

//        public void Init(KinectBaseForm form, GameContext gameContext)
//        {
//            this.activeWindow = form;
//            this.gameContext = gameContext;
//            Console.WriteLine("Init activeWindow & gameContext");
//        }

//        public void SetActiveWindow2(KinectBaseForm form)
//        {
//            this.activeWindow = form;
//        }

//        public KinectBaseForm GetActiveWindow()
//        {
//            return this.activeWindow;
//        }

//        public void SetActiveWindow(KinectBaseForm form)
//        {

//            if (this.activeWindow.InvokeRequired)
//            {
//                updateActiveWindow update = new updateActiveWindow(SetActiveWindow);
//                this.activeWindow.Invoke(update, new object[] { form });
//            }
//            else
//            {
//                //if (form == null)
//                //{
//                //    this.activeWindow.Click(0, 0);
//                //    this.activeWindow = new 
//                //}
//                //else
//                //{
//                this.activeWindow.Close();
//                this.activeWindow = form;
//                this.activeWindow.Show();
//                //}
//            }
//        }

//        //public void SetOptionsParams(int boardSize, String playerName)
//        //{        
//        //}

//        //public void SetIndexTile(int horizontalIndex, int verticalIndex)
//        //{

//        //    //if (this.activeWindow.InvokeRequired)
//        //    //{
//        //    //    openTile update = new openTile(SetIndexTile);
//        //    //    this.activeWindow.Invoke(update, new object[] { horizontalIndex, verticalIndex });
//        //    //}
//        //    //else
//        //    //{
//        //    //    this.activeWindow.Click(horizontalIndex, verticalIndex);
//        //    //}
//        //}

//        //public void CloseApplication()
//        //{
//        //    this.activeWindow.Click(0, 4);
//        //    this.gameContext.ApplicationClose();
//        //}


//    }
//}